package main

import (
	"fmt"
	"github.com/gin-gonic/gin"
	"net/http"
)

func main() {
	engine := gin.Default()
	//单个文件上传
	engine.POST("/upload", func(context *gin.Context) {

		file, err := context.FormFile("file")
		if err != nil {
			context.JSON(http.StatusInternalServerError, gin.H{
				"message": err.Error(),
			})
			return
		}
		dst := fmt.Sprintf("./src/file/%s", file.Filename)
		// 上传文件到指定的目录
		_ = context.SaveUploadedFile(file, dst)
		context.JSON(http.StatusOK, gin.H{
			"message": fmt.Sprintf("'%s' 文件已上传", file.Filename),
		})
	})

	//多文件上传
	engine.POST("/mulUpload", func(context *gin.Context) {
		// Multipart form
		form, _ := context.MultipartForm()
		files := form.File["file"]
		for _, file := range files {
			dst := fmt.Sprintf("./src/file/%s", file.Filename)
			// 上传文件到指定的目录
			_ = context.SaveUploadedFile(file, dst)
		}
		context.JSON(http.StatusOK, gin.H{
			"message": fmt.Sprintf("%d 多文件已上传", len(files)),
		})
	})
	engine.Run(":8088")
}
